Unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
Operating systems may employ virtual memory to simulate more main memory (also known as “system memory”) than that actually exists, allowing computers to run larger programs and multiple programs concurrently. An operating system (OS) may assign physical pages (also known as “page frames”) in main memory to virtual pages in virtual memory and may record their mappings in page tables.
Computers may employ caching to mitigate a processor-memory gap that may stem from memory access latency. When a processor is to read from or write to a location in main memory, the processor may first determine if a copy of that data is in a cache. If so, the processor reads from or writes to the cache, which is faster than reading from or writing to the main memory.
Computers may use multiple levels of cache, each bridging the gap between the processor and the main memory. A level 1 (L1) cache may be built into a processor chip while a level 2 (L2) cache may be built into the processor chip, in a processor package, or on a motherboard. The L1 cache may be optimized for fast access time while the L2 cache may be optimized for low miss rate.